package com.spic.business.blast.service;

import com.spic.business.blast.domain.BlastDeployment;
import com.spic.business.blast.domain.vo.BlastAreaVo;
import com.spic.business.blast.domain.vo.BlastPoint;
import com.spic.business.blast.domain.vo.PresetVo;

import java.util.List;
import java.util.Map;

/**
 * 爆破布防Service接口
 *
 * @author spic
 * @date 2022-03-03
 */
public interface IBlastDeploymentService
{
    /**
     * 查询爆破布防
     *
     * @param id 爆破布防主键
     * @return 爆破布防
     */
    public BlastDeployment selectBlastDeploymentById(String id);

    /**
     * 查询爆破布防列表
     *
     * @param blastDeployment 爆破布防
     * @return 爆破布防集合
     */
    public List<BlastDeployment> selectBlastDeploymentList(BlastDeployment blastDeployment);

    void calcAlarm();

    List<BlastAreaVo> getPolygons();

    PresetVo getPreset(String taskId);

    public List<BlastDeployment> selectBlastDeploymentListByDate(String date);

    /**
     * 新增爆破布防
     *
     * @param blastDeployment 爆破布防
     * @return 结果
     */
    public int insertBlastDeployment(BlastDeployment blastDeployment);

    /**
     * 修改爆破布防
     *
     * @param blastDeployment 爆破布防
     * @return 结果
     */
    public int updateBlastDeployment(BlastDeployment blastDeployment);

    /**
     * 批量删除爆破布防
     *
     * @param ids 需要删除的爆破布防主键集合
     * @return 结果
     */
    public int deleteBlastDeploymentByIds(String[] ids);

    /**
     * 删除爆破布防信息
     *
     * @param id 爆破布防主键
     * @return 结果
     */
    public int deleteBlastDeploymentById(String id);
    public Map<String,String> getCode();

    int deleteChargPositionByidByIds(String ids);

    List<Map<String, Object>> getCameraIndexCodeType();

    void filterDirtyData();
}
